home *** CD-ROM | disk | FTP | other *** search
- MMCalc 2.1 - "Taschenrechner" für Atari-Portfolio (und andere PCs)
- ------------------------------------------------------------------
-
- Folgende Dateien gehören zu MMCalc:
- MMCALC.EXE Programm für alle Rechner inkl. Atari-Portfolio
- MMCALCPC.EXE Programm für 286-er und aufwärts, Koprozessor wird
- unterstützt.
- MMCALC.DOC Diese Programmbeschreibung
-
- Vorgeschichte in Stichpunkten
- -----------------------------
-
- - als Ingenieur brauche ich einen Taschenrechner
- - der im Folio eingebaute "Rechner" ist für meine Zwecke %&!!@?..
- - zusätzlich zum Folio einen weiteren Rechner rumzuschleppen ist
- auch %&!!@?
- - Ein fertiges Programm in dieser Art habe ich nicht gefunden
- - In den Weihnachtsfeiertagen 1990 habe ich dann in den
- sauren Apfel gebissen und in Turbo-Pascal das Programm MMCalc
- geschrieben
- - voilà - alles paletti !
- - Erweiterungen auf Version 2.0 und 2.1
-
-
- Grundsätzliche Bedienung
- ------------------------
-
- Die Bedienung des Programms ist einfach:
- Beim Prompt "[d]" gibt man die Berechnung ein, Return liefert
- das Ergebnis.
- Bei edr Ermittlung des Ergebnisses wird die übliche Rangfolge der
- Operatoren eingehalten: ^, * /, + -.
- Zur Erläuterung der Syntax eine Beispiel-Berechnung:
-
- [d] sin(45)*(2+pi)/sqrt(4^2)-acos(pi/4) <ך
- -37.3335677
-
- Die Eingabezeile kann editiert werden.
- Der Kleinbuchstabe im Prompt zeigt den aktiven Modus für
- trigonometrische Berechnungen an.
- Bei Eingabe von "?" und Return erscheint folgender Hilfetext:
- (bei der PC-Version umfangreicher)
-
- - Hilfe ------------------------------
- Operatoren: +,-,*,/,^ Konstanten: pi,e
- Funkt.: sin,cos,tan,asin,acos,atan,ln
- sqrt,abs
- Variablen: M0(letztes Ergebnis),M1..M9
- Bef: "=" Var-Liste, "M?=" Var-Löschen
- "M?=.." Var-Zuweisung
- "r(d,g)" Setzen von rad, deg, gon
-
- Wenn die Eingabe mit einem der Operatoren begonnen wird, so wird
- mit dem letzten Ergebnis weitergerechnet. Das bedeutet allerdings
- auch, daβ ein negativer Wert am Anfang der Eingabezeile eingeklam-
- mert werden bzw. die Eingabezeile mit einem Leerzeichen begonnen
- werden muβ.
-
- Der Rechner kann problemlos durch eine der eingebauten Portfolio-
- anwendungen(Adressbuch, Terminkalender etc.) "überladen" werden.
- Das heiβt, daβ während der Rechner läuft über "Atari-Taste + Buch-
- stabe" ein Portfolio-Programm gestartet werden kann. Nach Beendigung
- dieses Programms landet man wieder in MMCALC.
-
- Durch Eingabe von "e" wie Ende wird das Programm beendet.
-
-
- Weitere Möglichkeiten (, die weit über die Fähigkeiten eines
- --------------------- "normalen" Taschenrechners hinausgehen)
-
- - Definieren von Funktionen:
-
- Analog zu den Speichern(M[1..9]) können Funktionen(F[0..9]) definiert
- werden. Es sind maximal 3 Parameter zulässig, also (x), (x,y) oder
- (x,y,z). Funktionen ohne Parameter sind ebenfalls möglich, haben
- jedoch nur dann einen Sinn, wenn sie auf eine oder mehrere Variablen
- zugreifen (z.B.: f1=(m1+m2+m3)*4/m4 ).
- Beispiel: [d] f1=x+x^2+y <ך (definieren)
- [d] 5+f1(2,1) <ך (verwenden)
- 12 (Ergebnis)
- [d] f1= <ך (löschen)
- [d] 5+f1(2,1) <ך (nicht mehr definiert)
- Fehler: ungültige Funktion
- Alle definierten Funktionen können durch f= <ך aufgelistet werden.
-
- - Berechnung von Ableitungen:
-
- (nur für Funktionen mit genau einem Parameter, auch vordefinierte wie
- z.B. "sin" oder "ln").
- Für die erste bzw. zweite Ableitung wird der Funktion ein '(Hochkomma)
- bzw. "(Gänsefüβchen) nachgestellt, der x-Wert wird als Parameter
- übergeben.
- Beispiel: [d] f1=x+x^2 <ך
- [d] 5+f1'(2) <ך
- 10
- [d] 5+f1"(2) <ך
- 6.9999934
- (Zur Bildung der Ableitung werden die Funktionswerte im Abstand von
- \h vom angegebenen X-Wert berechnet. \h kann eingestellt werden, der
- Standardwert beträgt 0.001)
-
- - Berechnung von Integralen:
-
- (nur für Funktionen mit genau einem Parameter)
- Für eine Integralberechnung wird der Funktion ein "$" vorangestellt,
- die Integrationsgrenzen werden als Parameter übergeben.
- Beispiel: [d] f1=2*x^2 <ך
- [d] 5+$f1(0,2) <ך
- 10.3333333
- [d] 5+$f1'(0,2) <ך (Integral der Ableitung)
- 13
- (Das Integral wird nach der Simpson-Regel mit \i Abschnitten berech-
- net. \i kann eingestellt werden, der Standardwert beträgt 20)
-
- - Berechnung von Nullstellen:
-
- (nur für Funktionen mit genau einem Parameter)
- Diese Option eignet sich besonders zur Löung nichtlinearer Gleichungen
- mit einer Unbekannten.
- Für eine Nullstellenberechnung wird der Funktion ein "%" vorangestellt,
- der Untersuchungsbereich wird in 2 Parametern übergeben. Die Suche
- beginnt beim ersten und endet beim zweiten Parameter. Ausgegeben wird
- die erste gefundene Nullstelle.
- Beispiel: [d] f1=x^2-1 <ך
- [d] %f1(0,2) <ך
- 1
- [d] %f1(-2,2) <ך
- -1
- (Die Grobsuche findet in \n Abschnitten statt, die Feinermittlung
- hat eine Genauigkeit besser als \e. \n und \e können eingestellt
- werden. Standardwerte: \n = 10, \e = 0.0001)
-
- - Verschachtelungmöglichkeit:
-
- Die bisher beschriebenen Ausdrücke können beliebig in Berechnungen
- eingebaut bzw. ineinander verschachtelt werden.
- Beispiel: [d] f1=x+x^2-2+x^3 <ך
- [d] f2=$f1(0,x) <ך
- [d] m1=%f2(0.1,5) <ך
- 1.3863
- Statt einer Zahl kann immer auch eine Formel eingegeben werden (siehe
- Beispiel zum DRAW-Befehl).
-
- - Ändern der Voreinstellungen:
-
- Die aktiven Einstellungen werden durch \= <ך aufgelistet.
- Eine Änderung geschieht durch Zuweisung eines neuen Wertes.
- Beispiele: [d] \e=0.00001 <ך (Nullstellen auf 5 Stellen hinter dem
- Komma genau)
- [d] \i=40 <ך (Integration in 40 Abschnitten)
-
- - Wiedervewendung der letzten 4 Eingabezeilen:
-
- Über die "nach oben" und "nach unten" -Cursortasten ist es möglich,
- eine der letzten 4 Eingaben zum erneuten Editieren zurückzuholen.
-
- - LIST-Befehl:
- Hinweis: alle "Befehle" können natürlich nicht in Berechnungen
- eingebaut werden.
-
- (nur für Funktionen mit genau einem Parameter)
- Die Funktionswerte der angegebenen Funktion werden im Bereich vom
- ersten bis zum zweiten Parameter ausgegeben, die Schrittweite wird
- im dritten Parameter angegeben.
- Beispiel: [d] f1=x^2 <ך
- [d] list f1'(-4,4,2) <ך
- -4 -8
- -2 -4
- 0 0
- 2 4
- 4 8
- Bei mehr als 7(bei der PC-Version 24) Werten wird die Auflistung
- nach jeweils 7(24) Werten unterbrochen, wonach jeweils RETURN
- gedrückt werden muβ.
-
- - DRAW-Befehl:
-
- (nur für Funktionen mit genau einem Parameter)
- Die Funktionswerte der angegebenen Funktion werden im Bereich vom
- ersten bis zum zweiten Parameter graphisch dargestellt.
- Beispiel: [d] r <ך
- [r] draw sin(-pi/2,pi/2) <ך
- -----------------------------------------------
- | Jetzt kommt die Grafik, aber die ist hier |
- | schlecht darstellbar. |
- | Das Bild verschwindet, sobald neue Eingaben |
- | gemacht werden. |
- -----------------------------------------------
- Hinweise:
- Die Grafik funktioniert nur auf dem Portfolio und auf Rechnern
- mit 100%'ig CGA-kompatibler Grafikkarte (CGA, EGA, VGA).
- Auch Hercules-Karten können verwendet werden, wenn zuvor ein
- CGA-Emulator geladen wird.
- Das Zeichnen von Ableitungen und insbesondere von umfangreicheren
- Integralfunktionen kann auf dem Portfolio einige Zeit dauern, da
- z.B. beim Zeichnen einer Integralfunktion die Ursprungs-Funktion
- ca. 3000 mal ausgewertet werden muβ.
-
- - EDFU-Befehl:
-
- Ermöglicht das Editieren bereits eingegebener Funktionen.
- Die Eingabe von "edfu (2)" bringt die Definition von F2 zum
- Editieren auf den Bildschirm. Während des Editierens kann man
- durch Drücken der ESC-Taste jederzeit den ursprünglichen Text
- zurückholen. <ך(Enter) schlieβt die Änderung ab.
-
- - SAVE-Befehl:
-
- Der augenblickliche Status des Rechners kann jederzeit in eine Datei
- abgespeichert werden.
- Gesichert werden dann folgende Einstellungen:
- - die Speicher M0 bis M9
- - die Funktionen F0 bis F9
- - die vier Einstellungen \h, \i, \e und \n
- - der Modus für trigonometrische Berechnungen (deg-rad-gon)
- Beispiel: [d] save c:\rechner\hallo <ך
- [d]
- der Status wurde nun in der Datei "hallo.clc" im Ver-
- zeichnis "c:\rechner" gesichert.
- Wird kein Pfad angegeben, dann gilt das aktuelle Verzeichnis.
- Wird keine Dateinamenserweiterung angegeben (wie im Beispiel),
- dann wird vom Programm ".clc" angehängt.
-
- - LOAD-Befehl:
-
- Über diesen Befehl wird ein gespeicherter Status zurückgeladen.
- Syntax und Eigenschaften analog SAVE-Befehl.
-
- - Initialisierung des Rechners:
-
- Es ist möglich, dem Rechner schon beim Programmaufruf Anweisungen
- zur Abarbeitung zu übergeben. Die einzelnen Anweisungen werden, ge-
- trennt durch Leerzeichen, hinter den Programmnamen geschrieben.
- Falls keine Fehler auftreten, erscheinen keine Meldungen.
- Beispiel: c:\>mmcalc r m3=pi^2 f9=(f1"(x-0.01)-f1"(x+0.01))/0.02 <ך
- (Start aus der Dos-Ebene, wobei
- - der Rechenmodus auf "Radiant" geschaltet wird
- - M3 mit 9.86... belegt wird
- - F9 als dritte Ableitung von F1 vordefiniert wird)
- Diese Initialisierung geschieht sinnvollerweise über Batchfiles,
- die die jeweilige Eingabezeile enthalten.
-
- - Möglichkeit der Abschaltung von Meldungen:
-
- Durch Eingabe von "M" werden "unnötige" Meldungen abgeschaltet.
- Auβerdem wird von der editierbaren Eingabezeile auf die Dos-Standard-
- eingabe umgeschaltet.
- Dies kann dann sinnvoll sein, wenn die Umleitunsmöglichkeiten von
- DOS verwendet werden. Nicht dargestellt werden dann die Startmeldung,
- das Prompt und die "mehr..."-Meldungen bei Verwendung von LIST.
- Beispiel: c:\>mmcalc m f1=x^2+x/3+pi*x listf1(-10,10,1) e >prn <ך
- (Aufruf aus der DOS-Ebene:
- Eine Liste der Funktionswerte der Funktion
- f1(x)=x^2+x/3+pi*x wird ohne sonstige Meldungen
- auf dem Drucker ausgegeben. Das Programm wird an-
- schlieβend sofort verlassen.)
- ....der Drucker arbeitet....
- c:\>
- Es ist auch möglich, das Programm aus einer Datei zu "füttern", und
- die Ergebnisse in eine andere Datei schreiben zu lassen.
- Beispiel: c:\>mmcalc m <ein.dat >aus.dat <ך
- Achtung! In EIN.DAT darf man das "e" in der letzten Zeile nicht
- vergessen, da ja die Tastatur abgeschaltet wird !!
- Hinter dem Programmnamen muβ als erstes der Parameter "m"
- angegeben werden um auf Dos-IO umzuschalten !!
-
- Viel Spaβ bei der Benutzung wünscht
- Martin Mühlhaus
-
- PS.:
- Wenn Ihnen Das Programm genausogut gefällt wie mir, und wenn Sie
- das honorieren wollen, dann dürfen Sie DM 20.- an mich überweisen.
- Sie werden dann als registrierter Anwender bei Erscheinen eines
- Updates informiert (Adresse nicht vergessen !).
- Kto.: Postgiro München, Kto.Nr. 323134-806, BLZ 70010080
- Adr.: Martin Mühlhaus, Pestalozzistr. 50, 8000 München 5
-